# 开发模式：单例模式（创建的对象都只使用一块内存，实现了对内存的优化）
class Singleton:
    # 私有化   单例的地址就存在于__instance
    __instance = None
    name = "孙涵"

    # 重写__new__
    def __new__(cls):
        if cls.__instance is None:
            cls.__instance = object.__new__(cls)
        return cls.__instance    # 根据下面的代码进行了简化
        #     return cls.__instance
        # else:
        #     return cls.__instance

    def show(self):
        print("----->",Singleton.name)

s = Singleton()
s1 = Singleton()
print(s)
print(s1)
s.show()
s1.show()